package Day007_Collection_泛型_数据结构.Demo04_泛型;

/*
    泛型:可以在类或方法中预知地使用未知的类型
    泛型的作用是在创建对象时，将未知的类型确定具体的类型。当没有指定泛型时，默认类型为Object类型
 */

import java.util.ArrayList;
import java.util.Collection;

public class Test {
    public static void main(String[] args) {
        //1.集合不适用泛型
        Collection coll = new ArrayList();
        //添加元素
        coll.add("迪丽热巴"); //String
        coll.add(100); //Integer
        coll.add(3.14); //Double
        //遍历
        /*for (Object o : coll) {
            //操作取出的元素
            String str = (String) o; //向下强转
            System.out.println("字符串元素长度:" + str.length());
            //取出时候出错,Integer,Double,不能赋给str
        }*/

        //2.集合使用泛型
        //指定String泛型
        Collection<String> coll1 = new ArrayList<>();
        coll1.add("迪丽热巴"); //String
        coll1.add("古力娜扎"); //String
        coll1.add("马尔扎哈"); //String
        for (String stu : coll1) {
            System.out.println(stu.length());
        }
    }
}
